package uk.ac.ebi.uniprot.wikipedia.NotCore;

import uk.ac.ebi.uniprot.wikipedia.model.GeneAccessionPair;

import java.util.Set;
import java.util.TreeSet;

/**
 * Created with IntelliJ IDEA.
 * User: ljgarcia
 * Date: 03/07/12
 * Time: 13:36
 * To change this template use File | Settings | File Templates.
 */
public class GeneWikiHumanSwissProtMappingRetrieval extends GeneWikiUniProtMappingRetrieval {
    private static GeneWikiHumanSwissProtMappingRetrieval ourInstance = new GeneWikiHumanSwissProtMappingRetrieval();
    private Set<GeneAccessionPair> mappingWithAccession;
    private Set<GeneAccessionPair> mappingNoAccession;

    public static GeneWikiHumanSwissProtMappingRetrieval getInstance() {
        return ourInstance;
    }

    private GeneWikiHumanSwissProtMappingRetrieval() {
        this.mappingWithAccession = new TreeSet<GeneAccessionPair>();
        this.mappingNoAccession = new TreeSet<GeneAccessionPair>();
    }

    public Set<GeneAccessionPair> getMappingWithAccession() throws Exception {
        if (this.mappingWithAccession.size() == 0) {
            //this.mappingWithAccession = this.runMapping(GeneWikiHumanRetrieval.getInstance().getGeneWikiWithAccession(), true, GeneWikiOrganism.HUMAN);
        }
        return this.mappingWithAccession;
    }

    public Set<GeneAccessionPair> getMappingNoAccession() throws Exception {
        if (this.mappingNoAccession.size() == 0) {
            //this.mappingNoAccession = this.runMapping(GeneWikiHumanRetrieval.getInstance().getGeneWikiNoAccession(), true, GeneWikiOrganism.HUMAN);
        }
        return this.mappingNoAccession;
    }
}
